DigiOffice Gateway Web Services

<back to all web services

ProcessDocumentRequestMessage

Requires Authentication
import Foundation
import ServiceStack

public class ProcessDocumentRequestMessage : Codable
{
    public var instanceId:String
    public var documentRequest:DocumentRequestMessage

    required public init(){}
}

public class DocumentRequestMessage : Codable
{
    public var header:Header
    public var rootDocumentID:String
    public var includePhysicalFile:Bool

    required public init(){}
}

public class Header : Codable
{
    public var messageID:String
    public var timestamp:Date
    public var sender:Party
    public var recipient:Party
    //requestMessageID:Object ignored. Type could not be extended in Swift

    required public init(){}
}

public class Party : Codable
{
    public var title:String
    public var code:String
    public var version:String
    public var environment:Environment

    required public init(){}
}

public class Environment : Codable
{
    public var title:String
    public var code:String

    required public init(){}
}

public class DocumentMessage : Codable
{
    public var header:Header
    public var eventType:eventType
    public var document:Document

    required public init(){}
}

public enum eventType : String, Codable
{
    case Update
    case Create
    case Delete
    case Response
}

public class Document : ICustomProperties, Codable
{
    public var id:String
    public var rootDocumentID:String
    public var registrationprofileID:String
    public var title:String
    public var fullTitle:String
    public var number:String
    public var version:String
    public var externalNumber:String
    public var externalVersion:String
    public var internalNumber:String
    public var internalInvoiceNumber:String
    public var personID:Int
    public var relationID:Int
    public var relationTitle:String
    public var projectID:Int
    public var projectTitle:String
    public var `extension`:String
    public var date:Date?
    public var commentsCount:Int
    public var hasComments:Bool
    public var hasPreview:Bool
    public var extraField:String
    public var isFavorite:Bool
    public var documentcategoryText:String
    public var fileSize:Int?
    public var fileDate:Date?
    public var hash:String
    public var hashType:String
    public var fileUrl:String
    public var standardDocumentUrl:String
    public var isCorporateIdentity:Bool
    public var userTitle:String
    public var isFrozen:Bool
    public var internalCompanyID:Int
    public var directUrl:String
    public var allowDigitalSigningOnlyOnPrimaryVersions:Bool
    public var isPrimaryVersion:Bool
    public var fileExtension:String
    public var customProperties:[String:Object] = [:]

    required public init(){}
}


Swift ProcessDocumentRequestMessage DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /xml/reply/ProcessDocumentRequestMessage HTTP/1.1 
Host: kpm_digiofficeapigateway.tbi.nl 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ProcessDocumentRequestMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/DigiOffice.Integration.TBIXchangeAzure.Messages">
  <DocumentRequest>
    <Header>
      <MessageID>String</MessageID>
      <Recipient>
        <Code>String</Code>
        <Environment>
          <Code>String</Code>
          <Title>String</Title>
        </Environment>
        <Title>String</Title>
        <Version>String</Version>
      </Recipient>
      <RequestMessageID />
      <Sender>
        <Code>String</Code>
        <Environment>
          <Code>String</Code>
          <Title>String</Title>
        </Environment>
        <Title>String</Title>
        <Version>String</Version>
      </Sender>
      <Timestamp>0001-01-01T00:00:00</Timestamp>
    </Header>
    <IncludePhysicalFile>false</IncludePhysicalFile>
    <RootDocumentID>String</RootDocumentID>
  </DocumentRequest>
  <InstanceId>00000000-0000-0000-0000-000000000000</InstanceId>
</ProcessDocumentRequestMessage>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<DocumentMessage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/DigiOffice.Integration.TBIXchangeAzure.Messages">
  <Document>
    <Code>String</Code>
    <ConstructionBlockReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </ConstructionBlockReference>
    <ConstructionNumberReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </ConstructionNumberReference>
    <CreatedBy>String</CreatedBy>
    <CreationDate>0001-01-01T00:00:00</CreationDate>
    <CustomFields>
      <CustomField>
        <Name>String</Name>
        <Value>String</Value>
      </CustomField>
    </CustomFields>
    <DeletedDate>0001-01-01T00:00:00</DeletedDate>
    <DeletedDateSpecified>false</DeletedDateSpecified>
    <DocumentTypeReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </DocumentTypeReference>
    <File>
      <Content>String</Content>
      <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
      <Name>String</Name>
      <Size>0</Size>
      <Type>String</Type>
    </File>
    <Floor>0</Floor>
    <FloorSpecified>false</FloorSpecified>
    <GlobalID>String</GlobalID>
    <HousingTypeReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </HousingTypeReference>
    <ModifiedBy>String</ModifiedBy>
    <ModifiedDate>0001-01-01T00:00:00</ModifiedDate>
    <NewestVersion>false</NewestVersion>
    <ProjectReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </ProjectReference>
    <RelationReference>
      <GlobalID>String</GlobalID>
      <Title>String</Title>
    </RelationReference>
    <RootDocumentID>String</RootDocumentID>
    <Subject>String</Subject>
    <VersionNumber>String</VersionNumber>
  </Document>
  <EventType>Update</EventType>
  <Header>
    <MessageID>String</MessageID>
    <Recipient>
      <Code>String</Code>
      <Environment>
        <Code>String</Code>
        <Title>String</Title>
      </Environment>
      <Title>String</Title>
      <Version>String</Version>
    </Recipient>
    <RequestMessageID />
    <Sender>
      <Code>String</Code>
      <Environment>
        <Code>String</Code>
        <Title>String</Title>
      </Environment>
      <Title>String</Title>
      <Version>String</Version>
    </Sender>
    <Timestamp>0001-01-01T00:00:00</Timestamp>
  </Header>
</DocumentMessage>